const bodyParser = require("body-parser");
const express = require('express');
const passport = require('passport');

//引入数据库
//Mongoose为模型提供了一种直接的，基于schema结构去定义你的数据模型。它内置数据验证， 查询构建，业务逻辑钩子等，开箱即用。
const mongoose  = require('mongoose');
const db = require('./config/keys').mongoURL;
        
//导入路由模块
const users = require('./router/api/users');
const profiles = require('./router/api/profiles')

//实例化 app
const app = express();

//使用 body-parser 中间件
app.use(bodyParser.urlencoded({extended:false}));
app.use(bodyParser.json());

//数据库连接
mongoose.connect(db)
        .then(()=> console.log('成功'))
        .catch(err=> console.log(err))

// passport 初始化 (一定要初始化才能用)
app.use(passport.initialize());
require("./config/passport")(passport);

//使用router
app.use("/api/users",users);
app.use("/api/profiles",profiles)

const port = process.env.PORT || 5000;

app.listen(port,()=>{
    console.log(`app running on port ${port}`)
})
